//
//  HMVisitorViewController.swift
//  Swift3.0_Micro-blog-Sina
//
//  Created by Apple on 16/10/23.
//  Copyright © 2016年 Apple. All rights reserved.
//

import UIKit

class HMVisitorViewController: UIViewController {
    
    // 判断用户是否登录的标示
    var isLogin: Bool = HMUserAccountViewModel.sharedTools.isLogin
    // 访客视图
    var visitorView: HMVisitorView?
    
    // loadView 是帮我们控制器创建 view  如果我们重写了该方法 但是没有 super  
    // 我们可以自定义吧 
    // 如果我们 super 了 他就会帮我们创建一个 view
    override func loadView() {
        // 登录了
        if isLogin {
//            super.loadView()
            view = tableView
        }else {
            // 代表没有登录
            setupVisitorView()
            
        }
    }
    
    // MARK: - 设置访客视图
    private func setupVisitorView(){
        // 创建访客视图
        visitorView = HMVisitorView()

        // 02-闭包的实例化
        /*
         
            - VC -> View -> 闭包 -> VC (A->B->C->A)
         */
        visitorView?.closure = {[weak self] in
            // 04- 闭包的回调
            self?.loginClick()
        }
        view = visitorView
        
        setupNav()
    }
    
    // MARK: - 设置导航
    private func setupNav(){
        navigationItem.leftBarButtonItem = UIBarButtonItem(setHighlightedImgName: nil, title: "注册", target: self, action: #selector(loginClick))
        navigationItem.rightBarButtonItem = UIBarButtonItem(setHighlightedImgName: nil, title: "登录", target: self, action: #selector(loginClick))
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        
    }
    
    // MARK: - 监听事件
    @objc private func loginClick(){
        // 未来弹出微博登录控制器
        print("访客视图四个按钮点击")
        let oauthVc = HMOAuthViewController()
        let oauthNavC = HMNavigationController(rootViewController: oauthVc)
        present(oauthNavC, animated: true, completion:  nil)
    }
    
    // 懒加载tabelView 控件
    lazy var tableView:UITableView = UITableView()
}







